package com.xiaoshuidi.cloud.module.rooms.controller.admin.roomequipment.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.time.LocalDate;

/**
 * @Author Feng
 * @date 2023/4/27
 * 资产新增请求参数
 */
@Data
@Schema(name = "资产新增请求参数")
public class RoomEquipmentCreateReq {

    /**
     * 内部资产编码，前台传入
     */
    @Schema(name = "内部资产编码，前台传入")
    private String code;

    /**
     * 资产名称
     */
    @Schema(name = "资产名称")
    @NotNull(message = "请输入资产名称")
    private String name;

    /**
     * 资产类别ID
     */
    @Schema(name = "资产类别ID")
    @NotNull(message = "类别id非空")
    private Long categoryId;

    /**
     * 计量单位
     */
    @Schema(name = "计量单位")
    private String unit;

    /**
     * 使用期限
     */
    @Schema(name = "使用期限")
    private String shelfLife;

    /**
     * 负责人ID
     */
    @Schema(name = "负责人ID")
    private Long managerId;

    /**
     * 负责人名称
     */
    @Schema(name = "负责人名称")
    private String manager;

    /**
     * 位置类型
     */
    @Schema(name = "位置类型")
    private String positionType;

    /**
     * 所属方
     */
    @Schema(name = "所属方")
    private String own;

    /**
     * 所在房源-门店ID
     */
    @Schema(name = "所在房源-公寓ID。")
    @NotNull(message = "请选择一个门店")
    private Long apartmentId;

    /**
     * 小区名称
     */
    @Schema(description = "小区Name")
    private String area;

    /**
     * 楼栋号
     */
    @Schema(description = "楼栋号")
    private String buildingNo;

    /**
     * 单元号
     */
    @Schema(description = "单元号")
    private String unitNo;

    /**
     * 楼层
     */
    @Schema(description = "楼层")
    private Integer floorNo;

    /**
     * 房间id
     */
    @Schema(name = "房间Id")
    private Long roomId;

    /**
     * 1集中式0分散式
     */
    @Schema(description = "集中式true集中式分散式")
    private Boolean isConcentrated;

    /**
     * 是否是公区
     */
    @Schema(description = "是否是公区")
    private Boolean isPub;

    /**
     * 供应商id
     */
    @Schema(name = "供应商ID")
    private Long supplierId;

    /**
     * 资产品牌
     */
    @Schema(name = "资产品牌")
    private String brand;

    /**
     * 购买时间
     */
    @Schema(name = "购买时间")
    private LocalDate purchaseTime;

    /**
     * 保修时间
     */
    @Schema(name = "保修时间")
    private LocalDate warrantyTime;

    /**
     * 售后电话
     */
    @Schema(name = "售后电话")
    private String afterSalesTel;

    /**
     * 采购价
     */
    @Schema(name = "采购价")
    private BigDecimal purchasePrice;

    /**
     * 定价
     */
    @Schema(name = "定价")
    private BigDecimal price;

    /**
     * 规格
     */
    @Schema(name = "规格")
    private String specification;

    /**
     * 具体方位
     */
    @Schema(name = "具体方位")
    private String position;

    /**
     * 备注
     */
    @Schema(name = "备注")
    private String remark;

    /**
     * 图片列表,最多五张
     */
    @Schema(name = "图片列表,最多五张")
    private String pic;

    /**
     * 资产状态
     */
    @Schema(name = "资产状态")
    private String status;

}
